BI.Qube MetaStaging – инструмент, предназначенный для транспортировки данных
Цель MetaStaging – обеспечить транспортировку данных из систем источников в файловое S3-совместмое хранилище данных (HDFS, ObjectStorage) с автоматической генерацией в СУБД Greenplum объектов типа «представление» на каждый полученный файл хранилищем.
Компонент MetaStaging, предназначен для передачи данных из различных источников, как правило, из учетных систем в целевое корпоративное хранилище данных (КХД) с поддержкой целостности метаданных систем-источников, при формировании промежуточного физического слоя хранения учитываются особенности целевой платформы.
Компонент MetaStaging входит в состав системы BI.Qube и может эксплуатироваться как отдельный компонент, так и в составе системы, так и под управлением компонента MetaOrchestrator, в такой конфигурации использование компонента является наиболее эффективной.
Принцип работы MetaStaging сводится к взаимодействию программных блоков, которые отображены на рисунке ниже.
Рисунок 1. Блоки компонента MetaStaging
Краткое описание и назначение основных блоков компонента MetaStaging:
Рисунок 2. Алгоритм формирования слоя в Greenplum
Компонент поддерживает наиболее востребованные источники, среди которых брокеры сообщений, реляционные, документно-ориентированные и облачные БД и другие:
В таблице ниже приведены поддерживаемые типы данных на стороне источников данных.
Источник | Поддерживаемые типы | Неподдерживаемые типы |
SQL Server | tinyint, smallint, int, bigint, smallmoney, money, decimal, numeric, bit, real, float, date, time, smalldatetime, datetimeoffset, datetime, datetime2, char, varchar, nchar, nvarchar, text, ntext, binary, varbinary, image, uniqueidentifier, xml | geometry, geography |
PostgreSQL | bigint, bigserial, bit varying, boolean, box, bytea, character varying, character, cidr, circle, date, double precision, inet, integer, interval, line, lseg, macaddr, money, numeric, path, point, polygon, real, smallint, text, time without time zone, time with time zone, timestamp without time zone, timestamp with time zone, uuid, xml, json, jsonb | составные типы, диапазонные типы (int8range, datarange), enum,s array, tsquery, tsvector, txid_snapshot |
MySQL | all | enum (x,y …), set |
Rest API, Excel | all |
MetaStaging предназначен для организации процесса передачи данных из различных источников. На рисунке ниже приведена общая схема движения данных в процессе работы компонента MetaStaging.
Рисунок 3. Алгоритм работы MetaStaging
Возможна реализация разных сценариев работы с данными:
Для того, чтобы MetaStaging осуществил указанную выше интеграцию, необходимо заполнить настроечные таблицы. В зависимости от типа загрузки данных (инкрементальная загрузка, полная загрузка, полная загрузка с сохранением истории) алгоритм заполнения этих таблиц меняется.
Предварительная настройка компонента (заполнение БД для тестового запуска) осуществляется разработчиком, что позволяет пользователю сразу приступить к решению своих задач, не вдаваясь в подробности настройки.
Компонент MetaStaging для развертывания, функционирования и настройки использует различные программные инструменты и фреймворки. Обязательным условием является наличие у них открытого исходного кода. Поддерживаемые операционные системы: Linux (различные дистрибутивы, такие как Ubuntu, Mint, РЕД ОС), другие Unix-подобные системы, а также есть возможность развернуть компонент под Windows. Настроечные данные компонента могут храниться посредством СУБД: PostgreSQL (9.0 и позднее), Postgres Pro (10.22 и позднее), Arenadata Postgres (ADPG) (14.2.1), Greenplum на выбор заказчика.
Все процессы компонент осуществляет на основе информации из настроечной БД, которую заполняет пользователь. Взаимодействие с компонентом осуществляется через веб-интерфейс или работая напрямую с БД с помощью доступной среды разработки (например, DBeaver).
Минимальные аппаратные требования для установки серверной части (процессинг и БД):
В связи с высокой сложностью развертывания компонента в среде целевой СУБД установку компонента осуществляет вендор.
Краткое описание ПО MetaStaging
Функциональные характеристики ПО MetaStaging
Руководство пользователя MetaStaging
Описание технической архитектуры MetaStaging
Установка и запуск MetaStaging